home *** CD-ROM | disk | FTP | other *** search
Java Source | 1997-04-20 | 1.9 KB | 78 lines |
- package client;
-
- import java.awt.*;
- import java.io.IOException;
-
- public class NewPassenger extends Frame {
- String thePassenger;
- TextField passengerField;
- Choice seatNumber;
- Button makeRes;
- CanUpdate ui;
- int[] openSeats;
-
- public NewPassenger(CanUpdate edna) throws IOException {
- super("Make New Reservation");
-
- ui = edna;
-
- setLayout(new GridLayout(3, 1));
- Panel p;
-
- p = new Panel();
- p.add(new Label("passenger: "));
-
- passengerField = new TextField(30);
- p.add(passengerField);
- add(p);
-
- p = new Panel();
- openSeats = new Client().getOpenSeats();
-
- seatNumber = new Choice();
- for (int i = 0; i < openSeats.length; i++) {
- String s = new Integer(openSeats[i]).toString();
- seatNumber.addItem(s);
- }
- p.add(seatNumber);
-
- add(p);
-
- p = new Panel();
- makeRes = new Button("make reservation");
- p.add(makeRes);
- add(p);
- }
-
- public boolean handleEvent(Event e) {
- if (e.id == Event.WINDOW_DESTROY) {
- hide();
- return true;
- }
- return super.handleEvent(e);
- }
-
- public boolean action(Event e, Object what) {
- if (e.target == makeRes) {
-
- String passenger = passengerField.getText();
- passenger = passenger.trim();
- if (passenger.length() > 0) {
- int seatIndex = seatNumber.getSelectedIndex();
- int seatNum = openSeats[seatIndex];
- try {
- new Client().reservePassenger(passenger, seatNum);
- } catch (IOException x) {
- System.out.println("Unable to reserve " + passenger +
- "for seat number " + seatNum);
- }
- }
-
- hide();
- ui.updateUI();
- return true;
- }
- return super.action(e, what);
- }
- }
-